/obj/item/weapon/stimpack_adrenaline
	desc = "A [used] stimpack filled with various chemicals to induce effects on the user that replicates Adrenaline."
	name = "Adrenaline Stimpack"
	icon = 'Stimpack.dmi'
	item_state = "stimpack"
	icon_state = "stimpack_1"
	flags = FPRINT | ONBELT | TABLEPASS
	throwforce = 0
	w_class = 1.0
	throw_speed = 7
	throw_range = 15
	m_amt = 60
	var/used = "unused"

/obj/item/weapon/stimpack_adrenaline/attack_paw(mob/user as mob)
	return src.attack_hand(user)
	return

/obj/item/weapon/stimpack_adrenaline/New()
	var/datum/reagents/R = new/datum/reagents(30)
	reagents = R
	R.my_atom = src
	R.add_reagent("hyperzine",10)
	R.add_reagent("tricordrazine",10)
	R.add_reagent("tramadol",10)
	..()
	return

/obj/item/weapon/stimpack_adrenaline/attack(mob/M as mob,mob/user as mob)
	if (!(istype(M,/mob)))
		return
	if (reagents.total_volume)
		for(var/mob/O in viewers(M,null))
			O.show_message(text("\blue [] has been injected with [] by [].",M,src,user),1)
//		user << "\red You stab [M] with the pen."
//		M << "\red You feel a tiny prick!"
		if(M.reagents) reagents.trans_to(M,30)
		used = "used"
		icon_state = "stimpack_0"
		desc = "A [used] stimpack filled with various chemicals to induce effects on the user that replicates Adrenaline."
	return

/obj/item/weapon/stimpack_fake
	desc = "A [used] stimpack filled with various chemicals to induce effects on the user that replicates death. WARNING: Time for Fake-Death to ware off is undetermined. Potentially fatal."
	name = "Fake-Death Stimpack"
	icon = 'Stimpack.dmi'
	item_state = "stimpack"
	icon_state = "stimpack_1"
	flags = FPRINT | ONBELT | TABLEPASS
	throwforce = 0
	w_class = 1.0
	throw_speed = 7
	throw_range = 15
	m_amt = 60
	var/used = "unused"

/obj/item/weapon/stimpack_fake/attack_paw(mob/user as mob)
	return src.attack_hand(user)
	return

/obj/item/weapon/stimpack_fake/New()
	var/datum/reagents/R = new/datum/reagents(5)
	reagents = R
	R.add_reagent("zombiepowder",5)
	..()
	return

/obj/item/weapon/stimpack_fake/attack(mob/M as mob,mob/user as mob)
	if (!(istype(M,/mob)))
		return
	if (reagents.total_volume)
		for(var/mob/O in viewers(M,null))
			O.show_message(text("\blue [] has been injected with [] by [].",M,src,user),1)
//		user << "\red You stab [M] with the pen."
//		M << "\red You feel a tiny prick!"
		if(M.reagents) reagents.trans_to(M,5)
		used = "used"
		icon_state = "stimpack_0"
		desc = "A [used] stimpack filled with various chemicals to induce effects on the user that replicates death. WARNING: Time for Fake-Death to ware off is undetermined. Potentially fatal."
	return

/obj/item/weapon/stimpack_strength
	desc = "A [used] stimpack filled with various chemicals to induce effects on the user that enhances the musceles for a short amount of time (approximately thirty seconds). WARNING: Also induces hallucinations for a short amount of time."
	name = "Strength Stimpack"
	icon = 'Stimpack.dmi'
	item_state = "stimpack"
	icon_state = "stimpack_1"
	flags = FPRINT | ONBELT | TABLEPASS
	throwforce = 0
	w_class = 1.0
	throw_speed = 7
	throw_range = 15
	m_amt = 60
	var/used = "unused"

/obj/item/weapon/stimpack_strength/attack_paw(mob/user as mob)
	return src.attack_hand(user)
	return

/obj/item/weapon/stimpack_strength/New()
	var/datum/reagents/R = new/datum/reagents(5)
	reagents = R
	R.add_reagent("stoxin",5)
	..()
	return

/obj/item/weapon/stimpack_strength/attack(mob/M as mob,mob/user as mob)
	if (!(istype(M,/mob)))
		return
	if (reagents.total_volume)
		for(var/mob/O in viewers(M,null))
			O.show_message(text("\blue [] has been injected with [] by [].",M,src,user),1)
//		user << "\red You stab [M] with the pen."
//		M << "\red You feel a tiny prick!"
		if(M.reagents) reagents.trans_to(M,5)
		used = "used"
		icon_state = "stimpack_0"
		desc = "A [used] stimpack filled with various chemicals to induce effects on the user that enhances the musceles for a short amount of time (approximately thirty seconds). WARNING: Also induces hallucinations for a short amount of time."
		M.augmentations.Add(SUPRSTR)
		sleep(300)
		M.augmentations.Remove(SUPRSTR)
	return